주요 속성을 사용하면 스크립트에 필요한 값을 입력란으로 제공할 수 있습니다. 입력·출력 노트를 선택하게 하거나 체크박스로 동작을 바꾸는 데 유용합니다.
사용자가 코드의 논리값을 직접 수정하는 대신 체크박스를 제공할 수 있습니다. 먼저 다음 속성을 정의하세요.
#label:groupByExtension="promoted,alias=확장자별로 묶기,single,boolean"스크립트에서는 다음처럼 값을 읽습니다.
const byExtension = api.currentNote.getLabelValue("groupByExtension") === "true";
if (byExtension) {
// 선택한 경우에 실행할 작업을 작성합니다.
}이 방식은 프런트엔드와 백엔드 스크립트에서 모두 사용할 수 있습니다.
다른 노트에서 데이터를 읽고 결과를 별도 노트에 기록하려면 입력과 출력 관계를 주요 속성으로 정의합니다.
#relation:input="promoted,alias=입력 노트,single" #relation:output="promoted,alias=출력 노트,single"필수 입력란이 비어 있는지 확인할 수 있습니다.
const inputNoteId = api.currentNote.getRelationValue("input");
if (!inputNoteId) {
api.showError("입력 노트를 선택하세요.");
return;
}
const outputNoteId = api.currentNote.getRelationValue("output");
if (!outputNoteId) {
api.showError("출력 노트를 선택하세요.");
return;
}api.showError는 프런트엔드에서만 사용할 수 있습니다. 백엔드 스크립트에서는 이 호출을 제거해야 합니다. 제거하면 사용자에게 오류 이유가 표시되지 않으므로 필요한 경우 별도의 안내 방식을 마련하세요.
선택한 노트와 본문은 다음처럼 읽습니다.
const note = api.getNote(inputNoteId);
if (!note) {
return;
}
const content = note.getContent().toString("utf-8");
아래 설명은 본문에 나온 이미지 순서에 맞췄습니다. 이미지는 원본을 유지했으므로 영문 메뉴가 보일 수 있습니다. 현재 앱에서는 한국어 메뉴를 사용합니다. 코드와 주소 및 제품 이름은 원래 표기를 따릅니다.
화면에서 사용하는 주요 표현은 다음과 같습니다.